home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / COMM / INTERNET / TELNET / RLOGIND / !RloginD / !Help next >
Text File  |  1993-09-02  |  5KB  |  125 lines

  1. Remote login daemon
  2. -------------------
  3. Name:    RLoginD
  4. Purpose: Remote login daemon (serial port)
  5. Author:  (C) Andrew Brooks 1993 (arb@comp.lancs.ac.uk)
  6. Version: 3.00 (02 Sep 1993)
  7.  
  8.  
  9. Use
  10. ---
  11. This program creates a TaskWindow connected to the serial port.  This allows
  12. you to execute CLI commands from a terminal or other computer whilst somebody
  13. else is using the desktop.  See the telnet directory for an example of how
  14. to login to the Archimedes from a remote machine.
  15.  
  16. Just double-click the !RLoginD icon to run the program and start a TaskWindow
  17. connected to the serial port.  You will have to use the Task Manager to quit
  18. the program.  The 'RLogin Daemon' task is the program, 'Remote Login' is the
  19. TaskWindow.  If you quit the 'Remote Login' task then a new one is started
  20. automatically (this also happens when a remote user logs out from a telnet
  21. session).
  22.  
  23.  
  24. Configuration
  25. -------------
  26. You may need to alter the program to suit your environment, for example
  27. changing the serial port parameters etc.  The serial port parameters are
  28. set in PROCinitSerial, and should be self explanatory except for the 8N1
  29. which means: 8 data bits, no parity, 1 stop bit.
  30.  
  31. By default, control characters are not passed through because they are not
  32. received from the task.  To enable control characters change the ctrl_chars%
  33. variable at the top of the !RunImage to TRUE.  Doing this may give the error
  34. "Argument repeated".  If so, it is probably because !Zap has aliased the
  35. TaskWindow command to "%TaskWindow -ctrl".  In this case, you can change the
  36. variable back to FALSE as it is not needed.
  37.  
  38. Note that if you use !Virtual you can alias the TaskWindow command to
  39. "Virtual %*0" (see !Virtual.!Run) and so give remote clients virtual memory.
  40.  
  41. By default, when a new task window is started it runs the Login program which
  42. prompts the remote user for a login name and password.  The usernames and
  43. passwords can be changed by altering the DATA statements at the end of the
  44. Login program.  Each line is seven comma-separated fields:
  45. Username, Password, User id number, Group id number, Name, Home directory,
  46. and finally the command that will be executed after a successful login.
  47. The command is currently GOS which is just the command line, but you could
  48. run a shell such as bash if you had one compiled.  If you do have a shell
  49. then please let me know!
  50.  
  51. If you do not want to run the Login program then change the taskcmd$
  52. variable at the top of the !RunImage to "GOS".  Note that the Login facility
  53. is only available with RISC OS 3 (or RISC OS 3 TaskWindow modules loaded
  54. into RISC OS 2).
  55.  
  56. When telnet sessions are terminated a logout command is sent to RLoginD
  57. using an escape sequence.  This is detected and the TaskWindow is killed.
  58. If you are using a directly connected terminal then change the escapes%
  59. variable to FALSE otherwise you will have to press Escape twice for it to
  60. have any effect.
  61.  
  62.  
  63. Explanation
  64. -----------
  65. The code uses *ShellCLI_Task (or *TaskWindow, if available) to start up a new
  66. task window.  The TaskWindow module sends a message containing its task handle
  67. to the task specified in the commmand.
  68.  
  69. Output from the task is contained in Wimp messages.  The characters are sent
  70. straight to the serial port.
  71.  
  72. On Null events the serial port is checked and any characters available are
  73. packaged up into a Wimp message and sent to the task window.
  74.  
  75. The task window also sends a message when it is about to die.  The program
  76. picks this up and starts a new task window if required.
  77.  
  78. Quitting the program (from the Task Manager, or by Shutdown etc.) sends a
  79. mesage to the task asking it to terminate.
  80.  
  81. I have not tried the program using a terminal hooked up to the serial port.
  82. Presumably you would have to use one that understood Acorn VDU sequences...
  83. The way I used it was to log in to a mainframe and run a program that
  84. received telnet requests and passed characters to/from the Archimedes.
  85. Example source code for such a program is included in the telnet directory.
  86.  
  87. I'm afraid the code is only experimental, but I hope it is adequate to show
  88. the principles involved, and may even be of some use to somebody, somewhere!
  89.  
  90.  
  91. History
  92. -------
  93. 0.00 15/10/91 - First version.
  94. 1.00 24/11/92 - First released version.
  95. 2.00 22/08/93 - Second release: tidied up for RISC OS 3.
  96. 3.00 02/09/93 - Third release: fixed bug in baud procedure, added Login
  97.                 program, added telnet logout detection, added CR addition /
  98.                 removal, enhanced telnet code.
  99.  
  100.  
  101. To do
  102. -----
  103. Add /etc/passwd file support to Login.
  104. Add support for options to be set in OS variables / from a front end.
  105. Rewrite IO loops in assembler.
  106. Allow multiple sessions.
  107.  
  108.  
  109. Contact
  110. -------       
  111. Andrew Brooks
  112. arb@comp.lancs.ac.uk
  113. Computer Science Department,
  114. Lancaster University,
  115. Lancaster,
  116. LA1 4YR,
  117. UK.
  118.  
  119. After 1994:
  120. 7 Kennedy Close,
  121. Newton,
  122. Chester,
  123. CH2 2PL,
  124. UK.
  125.